﻿function reloadScheduleTable(ajaxUrl) {
    //Xóa thông tin cũ
    $("#tblSchedule tr:gt(0)").remove();
    var rsGet = GetAllSchedule(ajaxUrl);
    for (var i = 0; i < rsGet.length; i++) {
        var valArr = new Array();
        valArr.push(rsGet[i].ScheduleName);
        valArr.push(rsGet[i].InputDay);
        valArr.push(rsGet[i].CreateDay);
        valArr.push('<a href="#" title="' + rsGet[i].ScheduleIdInList + '">View</a>');
        //alert(valArr);
        tableAddRow("tblSchedule", valArr);
        //test();
    }

}


$(document).ready(function() {
    var tUrl = document.URL;
    var tArr = tUrl.split("/");
    var rootUrl = "";
    for (var i = 0; i < tArr.length - 2; i++) {
        rootUrl += tArr[i] + "/";
    }

    //Link ajax

    var ajaxGetXMLSubjectUrl = rootUrl + "AjaxPages/AjaxGetXMLSubject.aspx";
    var ajaxNewScheduleUrl = rootUrl + "AjaxPages/AjaxAddSchedule.aspx/AddSchedule";
    var ajaxViewScheduleUrl = rootUrl + "AjaxPages/AjaxViewSchedule.aspx";
    var ajaxAddSubjectUrl = rootUrl + "AjaxPages/AjaxAddSubject.aspx";
    var ajaxAddSessionLessionUrl = rootUrl + "AjaxPages/AjaxAddSessionLession.aspx";
    var ajaxAddTime = rootUrl + "AjaxPages/AjaxAddDay.aspx"
    var ajaxAddSubjectNotAt = rootUrl + "AjaxPages/AjaxAddSubjectNotAt.aspx";
    var ajaxAddTeacher = rootUrl + "AjaxPages/AjaxAddTeacher.aspx";
    var ajaxTeacherTime = rootUrl + "AjaxPages/AjaxFixTeacherTime.aspx";
    var ajaxProgram = rootUrl + "AjaxPages/AjaxProgram.aspx";
    var ajaxGroup = rootUrl + "AjaxPages/AjaxGroup.aspx";
    var ajaxFixSubjectLession = rootUrl + "AjaxPages/AjaxFixSubjectLession.aspx";
    var ajaxClass = rootUrl + "AjaxPages/AjaxClass.aspx";
    var ajaxFCST = rootUrl + "AjaxPages/AjaxFCST.aspx";

    //Link dialog
    var newScheduleUrl = rootUrl + "InputPage/NewSchedulePage.aspx";
    var timeUrl = rootUrl + "InputPage/TimePage.aspx";
    var weekUrl = rootUrl + "InputPage/WeekPage.aspx";
    var sessionUrl = rootUrl + "InputPage/SessionLessionPage.aspx";
    var handUrl = rootUrl + "InputPage/HandPage.aspx";
    var subjectUrl = rootUrl + "InputPage/SubjectPage.aspx";
    var THPTUrl = rootUrl + "InputPage/THPTPage.aspx";
    var subjectHandUrl = rootUrl + "InputPage/SubjectByHandPage.aspx";
    var subjectFixUrl = rootUrl + "InputPage/SubjectFix.aspx";
    var teacherUrl = rootUrl + "InputPage/TeacherPage.aspx";
    var teacherTimeUrl = rootUrl + "InputPage/FixTeacherSession.aspx";
    var programUrl = rootUrl + "InputPage/ProgramPage.aspx";
    var groupUrl = rootUrl + "InputPage/GroupPage.aspx";
    var fixSubjectLessionUrl = rootUrl + "InputPage/FixGroupSubjectDayLession.aspx";
    var classUrl = rootUrl + "InputPage/ClassPage.aspx";
    var fcstUrl = rootUrl + "InputPage/FixClassSubjectTeacherPage.aspx";


    //Form nhap giang buoc phan cong giao vien cho lop
    var diaFCSTLoad = false;
    var diaFCST = $("#diaFCST").load(fcstUrl).dialog({
        autoOpen: false,
        modal: true,
        width: 440,
        height: 600
    });

    //Form nhap thong tin lop hoc
    var diaClassLoad = false;
    var diaClass = $("#diaClass").load(classUrl).dialog({
        autoOpen: false,
        modal: true,
        width: 400,
        height: 480
    });


    //Form nhập thông tin giàng buộc các môn tự do
    var diaFixSubjectLessionLoad = false;
    var diaFixSubjectLession = $("#diaFixSubjectLession").load(fixSubjectLessionUrl).dialog({
        autoOpen: false,
        modal: true,
        width: 400,
        height: 480
    });

    //Form nhập thông tin các nhóm lớp có cùng chương trình học và buổi học
    var diaGroupLoad = false;
    var diaGroup = $("#diaGroup").load(groupUrl).dialog({
        autoOpen: false,
        modal: true,
        width: 400,
        height: 480
    });


    //Form nhập các chương trình đào tạo
    var diaProgramLoad = false;
    var diaProgram = $("#diaProgram").load(programUrl).dialog({
        autoOpen: false,
        modal: true,
        width: 400,
        height: 480
    });

    //Form nhập thời gian nghỉ dạy của các giáo viên trong thời khóa biểu.
    var diaTeacherTimeLoad = false;
    var diaTeacherTime = $("#diaTeacherTime").load(teacherTimeUrl).dialog({
        autoOpen: false,
        modal: true,
        width: 400,
        height: 480
    });

    // form nhập danh sách các giáo viên
    var diaTeacherLoad = false;
    var diaTeacher = $("#diaTeacher").load(teacherUrl).dialog({
        autoOpen: false,
        modal: true,
        width: 400,
        height: 480
    });

    var diaNewScheduleLoad = false;
    var diaNewSchedule = $("#diaNewSchedule").load(newScheduleUrl).dialog({
        autoOpen: false,
        modal: true,
        width: 400,
        height: 480
    });
    //Form nhập danh sách ngày học trong thời khóa biểu
    var diaTimeLoad = false;
    var diaTime;
    diaTime = $("#diaTime").load(timeUrl).dialog({
        autoOpen: false,
        modal: true,
        width: 400,
        height: 480

    });

    // Form thông tin buổi học trong tuần(WeekPage)
    var diaWeekLoad = false;
    var diaWeek;
    diaWeek = $("#diaWeek").load(weekUrl).dialog({
        autoOpen: false,
        modal: true,
        width: 400,
        height: 480
    });


    //Form nhập thông tin ca học trong một ngày
    var diaSessionLoad = false;
    var diaSession;
    diaSession = $("#diaSession").load(sessionUrl).dialog({
        autoOpen: false,
        modal: true,
        width: 400,
        height: 480
    });

    //Form nhập thôg tin ngày học bằng tay
    var diaHandLoad = false;
    var diaHand;
    diaHand = $("#diaHand").load(handUrl).dialog({
        autoOpen: false,
        modal: true,
        width: 400,
        height: 480
    });

    //Form nhập danh sách môn học
    var diaSubjectLoad = false;
    var diaSubject;
    diaSubject = $("#diaSubject").load(subjectUrl).dialog({
        autoOpen: false,
        modal: true,
        width: 400,
        height: 480
    });

    //Form chương trình học THPT
    var diaTHPTLoad = false;
    var diaTHPT;
    diaTHPT = $("#diaTHPT").load(THPTUrl).dialog({
        autoOpen: false,
        modal: true,
        width: 400,
        height: 480

    });
    // form nhập chương trình học bằng tay
    var diaSubjectByHandLoad = false;
    var diaSubjectByHand;
    diaSubjectByHand = $("#diaSubjectByHand").load(subjectHandUrl).dialog({
        autoOpen: false,
        modal: true,
        width: 400,
        height: 480
    });
    //Form SubjectNotAt
    var diaFixSubjectLoad = false;
    var diaFixSubject;
    diaFixSubject = $("#diaSubjectFix").load(subjectFixUrl).dialog({
        autoOpen: false,
        modal: true,
        width: 400,
        height: 480
    });



    var temp = "";
    //Khi đóng form tạo mới thời khóa biểu thì hiển thị form nhập thông tin ngày học trong thời khóa biểu (TimePage)
    diaNewSchedule.bind('dialogclose', function(event, ui) {
        reloadScheduleTable(ajaxViewScheduleUrl + "/GetListSchedule");

        diaTime.dialog('open');
        //up du lieu len form
        //...
        //Gán sự kiện cho các nút. control cần gán sự kiện khác.
        if (!diaTimeLoad) {
            $("#diaTime #btnOk").click(function() {
                var sl = groupRadioGetCheckValue("rdoNgay");
                switch (sl) {
                    case "27":
                        {
                            //Tạo danh sách các day từ thứ 2 đến thứ 7 chèn vào CSDL
                            var lstDays = new Array();
                            var t2 = new JDay();
                            t2.Order = 2;
                            t2.DayName = "Thứ 2";

                            var t3 = new JDay();
                            t3.Order = 3;
                            t3.DayName = "Thứ 3";

                            var t4 = new JDay();
                            t4.Order = 4;
                            t4.DayName = "Thứ 4";

                            var t5 = new JDay();
                            t5.Order = 5;
                            t5.DayName = "Thứ 5";

                            var t6 = new JDay();
                            t6.Order = 6;
                            t6.DayName = "Thứ 6";

                            var t7 = new JDay();
                            t7.Order = 7;
                            t7.DayName = "Thứ 7";

                            lstDays.push(t2);
                            lstDays.push(t3);
                            lstDays.push(t4);
                            lstDays.push(t5);
                            lstDays.push(t6);
                            lstDays.push(t7);
                            var msg = AddDay(lstDays, ajaxAddTime + "/AddDays");
                            if (msg == "SUCCESS") {
                                alert("Thêm thành công!");
                                diaTime.dialog('close');
                            }
                            else {
                                alert("Lỗi: " + msg);
                                temp = "STOP";
                                diaTime.dialog('close');
                            }
                            break;
                        }
                        //Tạo danh sách ngày học từ thứ 2 đến thứ 6. chèn vào CSDL
                    case "26":
                        {
                            var lstDays = new Array();
                            var t2 = new JDay();
                            t2.Order = 2;
                            t2.DayName = "Thứ 2";

                            var t3 = new JDay();
                            t3.Order = 3;
                            t3.DayName = "Thứ 3";

                            var t4 = new JDay();
                            t4.Order = 4;
                            t4.DayName = "Thứ 4";

                            var t5 = new JDay();
                            t5.Order = 5;
                            t5.DayName = "Thứ 5";

                            var t6 = new JDay();
                            t6.Order = 6;
                            t6.DayName = "Thứ 6";

                            lstDays.push(t2);
                            lstDays.push(t3);
                            lstDays.push(t4);
                            lstDays.push(t5);
                            lstDays.push(t6);
                            var msg = AddDay(lstDays, ajaxAddTime + "/AddDays");
                            if (msg == "SUCCESS") {
                                alert("Thêm thành công!");
                                diaTime.dialog('close');
                            }
                            else {
                                alert("Lỗi: " + msg);
                                temp = "STOP";
                                diaTime.dialog('close');
                            }

                            break;
                        }
                        //Đóng form TimePage.aspx yêu cầu hiện form weekPage.aspx.
                    case "week":
                        {
                            temp = "week";
                            diaTime.dialog('close');
                            break;
                        }
                        //Đóng form TimePage mở form HandPage.aspx.
                    case "hand":
                        {
                            temp = "hand";
                            diaTime.dialog('close');
                            break;

                        }
                    default:
                        {
                            alert("Hãy chọn một trong các lựa chọn.");
                        }
                }
            });
            diaTimeLoad = true;
        }
    });
    //Khi đóng form TimePage
    var temp1 = "";
    diaTime.bind('dialogclose', function(event, ui) {
        //Nếu chọn ngày học 2-7 hoặc 2-6 thì mở form tiếp theo là form SubjectPage
        if (temp == "") {
            //Load form SessionLession
            //alert("Reload");
            var lstJSession = new Array();
            lstJSession = new Array();
            var strSession = JSON.stringify(lstJSession);
            //alert("Session bat dau: " + strSession);
            var or = 0;
            diaSession.dialog('open');
            //Clear du lieu cu
            $("#diaSession #txtSession").val("");
            $("#diaSession #txtComment").val("");
            selectClear("diaSession #lstSession");
            if (!diaSessionLoad) {
                $("#diaSession #btnAdd").click(function() {
                    var sess = textboxGetText("diaSession #txtSession");
                    sess = sess.trim();
                    if (sess == "") {
                        alert("Bạn chưa nhập tên buổi học");
                    }
                    else {
                        var strSession = JSON.stringify(lstJSession);
                        //alert("Session: " + strSession);
                        var com = textboxGetText("diaSession #txtComment");
                        var js = new JSession();
                        js.SessionName = sess;
                        js.Comment = com;
                        js.Order = or;
                        or++;
                        lstJSession.push(js);
                        selectAddItem("diaSession #lstSession", sess, or);
                    }
                });

                $("#diaSession #btnDel").click(function() {
                    lstJSession = new Array();
                    selectClear("diaSession #lstSession");
                });
                $("#diaSession #btnOk").click(function() {
                    var num = textboxGetText("diaSession #txtNumLession");
                    if (num <= 0) {
                        alert("Bạn chưa nhập số tiết học.");
                    }
                    else {
                        var lstJLession = new Array();
                        for (var i = 0; i < num; i++) {
                            var jl = new JLession();
                            jl.Order = i + 1;
                            lstJLession.push(jl);
                        }
                        var strSession = JSON.stringify(lstJSession);
                        var strLession = JSON.stringify(lstJLession);
                        //alert("Session: " + strSession);
                        //alert("Lession: " + strLession);
                        //chèn Session và Lession vào CSDL
                        var msg = AddSessionLession(ajaxAddSessionLessionUrl + "/AddSessionLession", lstJSession, lstJLession);
                        if (msg == "SUCCESS") {
                            alert("Cập nhật thành công.");
                            diaSession.dialog('close');
                        }
                        else {
                            alert(msg);
                        }
                        lstJLession = new Array();
                        lstJSession = new Array();
                    }
                });
                diaSessionLoad = true;
            }
        }
        else {
            //Nếu chọn nhập ngày học là tùy chọn các ngày trong tuần thì hiện form WeekPage.
            if (temp == "week") {
                diaWeek.dialog('open');

                if (!diaWeekLoad) {
                    $("#diaWeek #btnOk").click(function() {
                        var arr = groupCheckGetCheckValue("chkNgay");
                        if (arr.length > 0) {
                            var lstDays = new Array();
                            for (var i = 0; i < arr.length; i++) {
                                var t = new JDay();
                                t.Order = i;
                                t.DayName = arr[i];

                                lstDays.push(t);
                            }
                            //alert(JSON.stringify(lstDays));
                            var msg = AddDay(lstDays, ajaxAddTime + "/AddDays");
                            if (msg == "SUCCESS") {
                                alert("Thêm thành công!");
                                diaWeek.dialog('close');
                            }
                            else {
                                alert("Lỗi: " + msg);
                                diaWeek.dialog('close');
                            }
                        }
                        else {
                            alert("Bạn chưa chọn các ngày học cho TKB.");
                        }
                    });
                    diaWeekLoad = true;
                }
            }
            else {
                //Nếu chọn nhập tay các ngày học thì hiện form HandPage.
                if (temp == "hand") {
                    diaHand.dialog('open');
                    var lstDays = new Array();
                    var or = 0;
                    if (!diaHandLoad) {
                        $("#diaHand #btnAdd").click(function() {
                            var dname = $("#diaHand #txtDayName").val();
                            var cm = $("#diaHand #txtComment").val();
                            var d = new JDay();
                            d.Order = or;
                            d.DayName = dname;
                            d.Comment = cm;
                            or++;
                            lstDays.push(d);
                            selectAddItem("lstDays", dname, dname);
                        });
                        $("#diaHand #btnClear").click(function() {
                            selectClear("lstDays");
                            lstDays = new Array();
                        });
                        $("#diaHand #btnOk").click(function() {
                            if (lstDays.length > 0) {
                                var msg = AddDay(lstDays, ajaxAddTime + "/AddDays");
                                if (msg == "SUCCESS") {
                                    alert("Thêm thành công!");
                                    diaHand.dialog('close');
                                }
                                else {
                                    alert("Lỗi: " + msg);
                                    diaHand.dialog('close');
                                }
                            }
                            else {
                                alert("Bạn chưa nhập thông tin ngày học.");
                            }
                        });
                        diaHandLoad = true;
                    }
                }
                else {
                    //Có lỗi trong quá trình insert vào CSDL.
                    if (temp == "STOP") {

                    }
                }
            }

        }
    });
    //Khi đóng form WeekPage thì hiện lên form SubjectPage
    diaWeek.bind('dialogclose', function(event, ui) {
        var lstJSession = new Array();
        var or = 0;
        diaSession.dialog('open');
        if (!diaSessionLoad) {
            $("#diaSession #btnAdd").click(function() {
                var sess = textboxGetText("diaSession #txtSession");
                sess = sess.trim();
                if (sess == "") {
                    alert("Bạn chưa nhập tên buổi học");
                }
                else {
                    var com = textboxGetText("diaSession #txtComment");
                    var js = new JSession();
                    js.SessionName = sess;
                    js.Comment = com;
                    js.Order = or;
                    or++;
                    lstJSession.push(js);
                    selectAddItem("diaSession #lstSession", sess, or);
                }
            });
            $("#diaSession #btnClear").click(function() {
                lstJSession = new Array();
                selectClear("diaSession #lstSession");
            });
            $("#diaSession #btnOk").click(function() {
                var num = textboxGetText("diaSession #txtNumLession");
                if (num <= 0) {
                    alert("Bạn chưa nhập số tiết học.");
                }
                else {
                    var lstJLession = new Array();
                    for (var i = 0; i < num; i++) {
                        var jl = new JLession();
                        jl.Order = i + 1;
                        lstJLession.push(jl);
                    }
                    //chèn Session và Lession vào CSDL
                    var msg = AddSessionLession(ajaxAddSessionLessionUrl + "/AddSessionLession", lstJSession, lstJLession);
                    if (msg == "SUCCESS") {
                        alert("Cập nhật thành công.");
                        diaSession.dialog('close');
                    }
                    else {
                        alert(msg);
                    }
                }
            });
            diaSessionLoad = true;
        }
    });
    //    diaSubject.bind('dialogopen', function(event, ui) {
    //        alert("Dia subject opened");
    //    });
    //    //Khi đóng form HandPage thị hiện form SubjectPage
    diaHand.bind('dialogclose', function(event, ui) {
        var lstJSession = new Array();
        var or = 0;
        diaSession.dialog('open');
        if (!diaSessionLoad) {
            $("#diaSession #btnAdd").click(function() {
                var sess = textboxGetText("diaSession #txtSession");
                sess = sess.trim();
                if (sess == "") {
                    alert("Bạn chưa nhập tên buổi học");
                }
                else {
                    var com = textboxGetText("diaSession #txtComment");
                    var js = new JSession();
                    js.SessionName = sess;
                    js.Comment = com;
                    js.Order = or;
                    or++;
                    lstJSession.push(js);
                    selectAddItem("diaSession #lstSession", sess, or);
                }
            });
            $("#diaSession #btnClear").click(function() {
                lstJSession = new Array();
                selectClear("diaSession #lstSession");
            });
            $("#diaSession #btnOk").click(function() {
                var num = textboxGetText("diaSession #txtNumLession");
                if (num <= 0) {
                    alert("Bạn chưa nhập số tiết học.");
                }
                else {
                    var lstJLession = new Array();
                    for (var i = 0; i < num; i++) {
                        var jl = new JLession();
                        jl.Order = i + 1;
                        lstJLession.push(jl);

                    }
                    //chèn Session và Lession vào CSDL
                    var msg = AddSessionLession(ajaxAddSessionLessionUrl + "/AddSessionLession", lstJSession, lstJLession);
                    if (msg == "SUCCESS") {
                        alert("Cập nhật thành công.");
                        diaSession.dialog('close');
                    }
                    else {
                        alert(msg);
                    }
                }
            });
            diaSessionLoad = true;
        }
    });
    //Đóng form session thì bật form SubjectPage
    diaSession.bind('dialogclose', function(event, ui) {
        diaSubject.dialog('open');
        if (!diaSubjectLoad) {
            $("#diaSubject #btnOk").click(function() {
                var rd = groupRadioGetCheckValue("rdoSubject");

                switch (rd) {
                    case "THPT":
                        {
                            //Nếu chọn chương trình THPT
                            //alert("Da chon");
                            temp1 = "THPT";
                            diaSubject.dialog('close');
                            break;
                        }
                    case "Hand":
                        {
                            //Nếu chọn nhập tay
                            temp1 = "Hand";
                            diaSubject.dialog('close');
                            break;
                        }
                    default:
                        {
                            alert("Hãy chọn một trong các lựa chọn.")
                        }
                }
            });
            diaSubjectLoad = true;
        }

    });
    //Khi đóng form SubjectPage
    diaSubject.bind('dialogclose', function(event, ui) {
        //Nếu chọn chương trình THPT thì hiện form THPTPage
        if (temp1 == "THPT") {
            //alert("temp1=thpt");
            diaTHPT.dialog('open');
            //load dữ liệu
            var lstXSub = GetXSubject(ajaxGetXMLSubjectUrl + "/GetXMLSubjects");
            var lstSelect = new Array();
            var lstAvail = new Array();
            var topS = 0, topA = 0;
            //Clear current data on interface
            selectClear("diaTHPT #lstSelect");
            selectClear("diaTHPT #lstAvaiable");
            if (lstXSub.length > 0) {
                for (var i = 0; i < lstXSub.length; i++) {
                    if (lstXSub[i].IsPop) {
                        lstSelect.push(lstXSub[i].Subject);
                        //Hiển thị lên dialog
                        selectAddItem("lstSelect", lstXSub[i].Subject.SubjectName, topS);
                        topS++;
                    }
                    else {
                        lstAvail.push(lstXSub[i].Subject);
                        selectAddItem("lstAvaiable", lstXSub[i].Subject.SubjectName, topA);
                        topA++;
                    }
                }
            }
            if (!diaTHPTLoad) {
                $("#diaTHPT #btnAdd").click(function() {
                    var sId = selectGetSelectedIndex("lstAvaiable");
                    if (sId >= 0) {
                        //alert(sId);
                        lstSelect.push(lstAvail[sId]);
                        selectAddItem("lstSelect", lstAvail[sId].SubjectName, topS);
                        topS++;
                        lstAvail.splice(sId, 1);
                        selectClearAt("lstAvaiable", sId);
                    }
                });
                $("#diaTHPT #btnRemove").click(function() {
                    var sId = selectGetSelectedIndex("lstSelect");
                    if (sId >= 0) {
                        //alert(sId);
                        lstAvail.push(lstSelect[sId]);
                        selectAddItem("lstAvaiable", lstSelect[sId].SubjectName, topA);
                        topA++;
                        lstSelect.splice(sId, 1);
                        selectClearAt("lstSelect", sId);
                    }
                });

                $("#diaTHPT #btnOk").click(function() {
                    var msg = AddSubject(ajaxAddSubjectUrl + "/AddSubject", lstSelect);
                    if (msg == "SUCCESS") {
                        alert("Thêm thành công " + lstSelect.length + " môn học.");
                        diaTHPT.dialog('close');
                    }
                    else {
                        alert(msg);
                    }
                });
                diaTHPTLoad = true;
            }

        }
        //Nếu chọn nhập bằng tay thì hiện form SubjectByHandPage
        else {
            if (temp1 == "Hand") {
                var lstJSubject = new Array();
                diaSubjectByHand.dialog('open');
                $("#diaSubjectByHand #txtName").val("");
                $("#diaSubjectByHand #txtNumLession").val("");
                $("#diaSubjectByHand #txtComment").val("");
                if (!diaSubjectByHandLoad) {
                    $("#diaSubjectByHand #btnAdd").click(function() {
                        var subjectName = textboxGetText("txtName");
                        var type = selectGetSelectedValue("cobType");
                        var primary = groupRadioGetCheckValue("rdoType");
                        var required = 1;
                        if (checkboxGetCheckState("chkRequire")) {
                            var re = textboxGetText("diaSubjectByHand #txtNumLession");
                            //alert(re);
                            if (re > 0) {
                                required = re;
                                //alert(required);
                            }
                            else {
                                alert("Bạn chưa nhập số tiết yêu cầu.");
                            }
                        }
                        var com = textboxGetText("diaSubjectByHand #txtComment");
                        var notNeed = 0;
                        if (checkboxGetCheckState("chkNotNeedTeacher")) {
                            notNeed = 1;
                        }

                        var enJSubject = new JSubject();
                        enJSubject.SubjectName = subjectName;
                        enJSubject.Type = type;
                        enJSubject.Primary = primary;
                        enJSubject.Require = required;
                        enJSubject.NotNeedTeacher = notNeed;
                        enJSubject.Comment = com;
                        lstJSubject.push(enJSubject);
                        var tarr = new Array();
                        tarr.push(subjectName);
                        tarr.push(type);
                        tarr.push(primary);
                        tarr.push(required);
                        tarr.push(com);
                        tableAddRow("tblListSubject", tarr);
                    });

                    $("#diaSubjectByHand #btnClearAll").click(function() {
                        lstJSubject = new Array();
                        tableDelAllRow("tblListSubject");
                    });

                    $("#diaSubjectByHand #btnOk").click(function() {
                        if (lstJSubject.length > 0) {
                            var msg = AddSubject(ajaxAddSubjectUrl + "/AddSubject", lstJSubject);
                            if (msg == "SUCCESS") {
                                alert("Thêm thành công " + lstJSubject.length + " môn học.");
                                diaSubjectByHand.dialog('close');
                            }
                            else {
                                alert(msg);
                            }
                        }
                        else {
                            alert("Bạn chưa nhập môn học nào.");
                        }
                    });
                    diaSubjectByHandLoad = true;
                }
            }
        }
    });
    diaTHPT.bind('dialogclose', function(event, ui) {
        diaFixSubject.dialog('open');
        var lstSNA = new Array();
        //Load dữ liệu lên form
        var subId = -1;
        var dayId = -1;
        var sesId = -1;
        var lstDay = GetData(ajaxAddSubjectNotAt + "/GetDays");
        var lstSession = GetData(ajaxAddSubjectNotAt + "/GetSessions");
        var lstLession = GetData(ajaxAddSubjectNotAt + "/GetLessions");
        var lstSubject = GetData(ajaxAddSubjectNotAt + "/GetSubjects");
        selectClear("diaSubjectFix #cobSubject");
        selectClear("diaSubjectFix #cobDay");
        selectClear("diaSubjectFix #cobSession");
        ulClearAll("diaSubjectFix #chlLession");
        //Load danh sách môn học
        for (var i = 0; i < lstSubject.length; i++) {
            selectAddItem("diaSubjectFix #cobSubject", lstSubject[i].SubjectName, lstSubject[i].SubjectID);

        }
        if (lstSubject.length > 0) {
            subId = lstSubject[0].SubjectID;
        }
        //Load danh sách tiết học

        for (var i = 0; i < lstLession.length; i++) {
            ulAddElement("diaSubjectFix #chlLession", '<input type="checkbox" name="chkLession" value="' + lstLession[i].LessionID + '" />' + lstLession[i].Order);
        }
        //Load danh sách buổi học
        //selectAddItem("diaSubjectFix #cobSession", "Tất cả", -1);
        for (var i = 0; i < lstSession.length; i++) {
            selectAddItem("diaSubjectFix #cobSession", lstSession[i].SessionName, lstSession[i].SessionID);
        }
        if (lstSession.length > 0) {
            sesId = lstSession[0].SessionID;
        }

        //Load danh sách các ngày học
        //selectAddItem("diaSubjectFix #cobDay", "Tất cả", -1);
        for (var i = 0; i < lstDay.length; i++) {
            selectAddItem("diaSubjectFix #cobDay", lstDay[i].DayName, lstDay[i].DayID);
        }
        if (lstDay.length > 0) {
            dayId = lstDay[0].DayID;
        }
        function RefreshChl() {
            //Load thông tin Subject not at của Subject hiện tại
            //var lstJSNA = GetData(ajaxAddSubjectNotAt + "/GetSNA");
            groupCheckUncheckAll("chkLession");
            var arrName = new Array();
            var arrVal = new Array();
            arrName.push("subjectID");
            arrVal.push(subId);
            var lstJSNA = GetDataPara(ajaxAddSubjectNotAt + "/GetSNA", arrName, arrVal);
            for (var i = 0; i < lstJSNA.length; i++) {
                if ((lstJSNA[i].DayID == dayId || dayId == -1) && (lstJSNA[i].SessionID == sesId || sesId == -1) && lstJSNA[i].SubjectID == subId) {
                    groupCheckCheckAtvalue("chkLession", lstJSNA[i].LessionID);
                }
            }
        }
        if (!diaFixSubjectLoad) {
            $("#diaSubjectFix #cobSubject").change(function() {
                subId = selectGetSelectedValue("diaSubjectFix #cobSubject");
                RefreshChl();
            });
            $("#diaSubjectFix #cobDay").change(function() {
                dayId = selectGetSelectedValue("diaSubjectFix #cobDay");
                RefreshChl();
            });
            $("#diaSubjectFix #cobSession").change(function() {
                sesId = selectGetSelectedValue("diaSubjectFix #cobSession");
                RefreshChl();
            });
            $("#diaSubjectFix #btnSubmit").click(function() {
                var lstJSNA = new Array();
                var checkArr = groupCheckGetCheckValue("chkLession");
                if (checkArr.length > 0) {
                    for (var i = 0; i < checkArr.length; i++) {
                        if (dayId > 0 && sesId > 0) {
                            var jSNA = new JSubjectNotAt();
                            jSNA.SubjectID = subId;
                            jSNA.DayID = dayId;
                            jSNA.SessionID = sesId;
                            jSNA.LessionID = checkArr[i];
                            lstJSNA.push(jSNA);
                        }
                        else {
                            if (dayId == -1) {
                                if (sesId == -1) {
                                    //alert("Alert -1 -1");
                                    for (var j = 0; j < lstDay.length; j++) {
                                        for (var k = 0; k < lstSession.length; k++) {
                                            var jSNA = new JSubjectNotAt();
                                            jSNA.SubjectID = subId;
                                            jSNA.DayID = lstDay[j].DayID;
                                            jSNA.SessionID = lstSession[k].SessionID;
                                            jSNA.LessionID = checkArr[i];
                                            lstJSNA.push(jSNA);
                                        }
                                    }
                                }
                                else {
                                    //alert("Alert -1 >0");
                                    for (var j = 0; j < lstDay.length; j++) {
                                        var jSNA = new JSubjectNotAt();
                                        jSNA.SubjectID = subId;
                                        jSNA.DayID = lstDay[j].DayID;
                                        jSNA.SessionID = sesId;
                                        jSNA.LessionID = checkArr[i];
                                        lstJSNA.push(jSNA);
                                    }
                                }
                            }
                        }
                    }
                    //Chèn thông tin vào CSDL
                    var msg = AddSubjectNotAt(ajaxAddSubjectNotAt + "/AddSubjectNotAt", lstJSNA);
                    if (msg == "SUCCESS") {
                        alert("Đã lưu!");
                        //diaFixSubject.dialog('close');
                    }
                    else {
                        alert(msg);
                    }
                }
                else {
                    alert("Chưa chọn tiết học!");
                }
            });
            $("#diaSubjectFix #btnOk").click(function() {
                if (confirm("Bạn chắc chắn đã hoàn thành?")) {
                    diaFixSubject.dialog('close');
                }
            });
            diaFixSubjectLoad = true;
        }

    });
    //Khi đóng form SubjectByHandPage bật form SubjectNotAtPage
    diaSubjectByHand.bind('dialogclose', function(event, ui) {
        diaFixSubject.dialog('open');
        var lstSNA = new Array();
        //Load dữ liệu lên form
        var subId = -1;
        var dayId = -1;
        var sesId = -1;
        var lstDay = GetData(ajaxAddSubjectNotAt + "/GetDays");
        var lstSession = GetData(ajaxAddSubjectNotAt + "/GetSessions");
        var lstLession = GetData(ajaxAddSubjectNotAt + "/GetLessions");
        var lstSubject = GetData(ajaxAddSubjectNotAt + "/GetSubjects");
        selectClear("diaSubjectFix #cobSubject");
        selectClear("diaSubjectFix #cobDay");
        selectClear("diaSubjectFix #cobSession");
        ulClearAll("diaSubjectFix #chlLession");

        //Load danh sách môn học
        for (var i = 0; i < lstSubject.length; i++) {
            selectAddItem("diaSubjectFix #cobSubject", lstSubject[i].SubjectName, lstSubject[i].SubjectID);

        }
        if (lstSubject.length > 0) {
            subId = lstSubject[0].SubjectID;
        }
        //Load danh sách tiết học

        for (var i = 0; i < lstLession.length; i++) {
            ulAddElement("diaSubjectFix #chlLession", '<input type="checkbox" name="chkLession" value="' + lstLession[i].LessionID + '" />' + lstLession[i].Order);
        }
        //Load danh sách buổi học
        //selectAddItem("diaSubjectFix #cobSession", "Tất cả", -1);
        for (var i = 0; i < lstSession.length; i++) {
            selectAddItem("diaSubjectFix #cobSession", lstSession[i].SessionName, lstSession[i].SessionID);
        }
        if (lstSession.length > 0) {
            sesId = lstSession[0].SessionID;
        }

        //Load danh sách các ngày học
        //selectAddItem("diaSubjectFix #cobDay", "Tất cả", -1);
        for (var i = 0; i < lstDay.length; i++) {
            selectAddItem("diaSubjectFix #cobDay", lstDay[i].DayName, lstDay[i].DayID);
        }
        if (lstDay.length > 0) {
            dayId = lstDay[0].DayID;
        }
        function RefreshChl() {
            //Load thông tin Subject not at của Subject hiện tại
            //var lstJSNA = GetData(ajaxAddSubjectNotAt + "/GetSNA");
            groupCheckUncheckAll("chkLession");
            var arrName = new Array();
            var arrVal = new Array();
            arrName.push("subjectID");
            arrVal.push(subId);
            var lstJSNA = GetDataPara(ajaxAddSubjectNotAt + "/GetSNA", arrName, arrVal);
            for (var i = 0; i < lstJSNA.length; i++) {
                if ((lstJSNA[i].DayID == dayId || dayId == -1) && (lstJSNA[i].SessionID == sesId || sesId == -1) && lstJSNA[i].SubjectID == subId) {
                    groupCheckCheckAtvalue("chkLession", lstJSNA[i].LessionID);
                }
            }
        }
        if (!diaFixSubjectLoad) {
            $("#diaSubjectFix #cobSubject").change(function() {
                subId = selectGetSelectedValue("diaSubjectFix #cobSubject");
                RefreshChl();
            });
            $("#diaSubjectFix #cobDay").change(function() {
                dayId = selectGetSelectedValue("diaSubjectFix #cobDay");
                RefreshChl();
            });
            $("#diaSubjectFix #cobSession").change(function() {
                sesId = selectGetSelectedValue("diaSubjectFix #cobSession");
                RefreshChl();
            });
            $("#diaSubjectFix #btnSubmit").click(function() {
                var lstJSNA = new Array();
                var checkArr = groupCheckGetCheckValue("chkLession");
                if (checkArr.length > 0) {
                    for (var i = 0; i < checkArr.length; i++) {
                        if (dayId > 0 && sesId > 0) {
                            var jSNA = new JSubjectNotAt();
                            jSNA.SubjectID = subId;
                            jSNA.DayID = dayId;
                            jSNA.SessionID = sesId;
                            jSNA.LessionID = checkArr[i];
                            lstJSNA.push(jSNA);
                        }
                        else {
                            if (dayId == -1) {
                                if (sesId == -1) {
                                    //alert("Alert -1 -1");
                                    for (var j = 0; j < lstDay.length; j++) {
                                        for (var k = 0; k < lstSession.length; k++) {
                                            var jSNA = new JSubjectNotAt();
                                            jSNA.SubjectID = subId;
                                            jSNA.DayID = lstDay[j].DayID;
                                            jSNA.SessionID = lstSession[k].SessionID;
                                            jSNA.LessionID = checkArr[i];
                                            lstJSNA.push(jSNA);
                                        }
                                    }
                                }
                                else {
                                    // alert("Alert -1 >0");
                                    for (var j = 0; j < lstDay.length; j++) {
                                        var jSNA = new JSubjectNotAt();
                                        jSNA.SubjectID = subId;
                                        jSNA.DayID = lstDay[j].DayID;
                                        jSNA.SessionID = sesId;
                                        jSNA.LessionID = checkArr[i];
                                        lstJSNA.push(jSNA);
                                    }
                                }
                            }
                        }
                    }
                    //Chèn thông tin vào CSDL
                    var msg = AddSubjectNotAt(ajaxAddSubjectNotAt + "/AddSubjectNotAt", lstJSNA);
                    if (msg == "SUCCESS") {
                        alert("Đã lưu!");
                        //diaFixSubject.dialog('close');
                    }
                    else {
                        alert(msg);
                    }
                }
                else {
                    alert("Chưa chọn tiết học!");
                }
            });
            $("#diaSubjectFix #btnOk").click(function() {
                if (confirm("Bạn chắc chắn đã hoàn thành?")) {
                    diaFixSubject.dialog('close');
                }
            });
            diaFixSubjectLoad = true;
        }

    });

    //Đóng form SubjectNotAtPage thì bật form TeacherPage
    diaFixSubject.bind('dialogclose', function(event, ui) {
        diaTeacher.dialog('open');
        var currentTeacher;
        var lstTeacher;
        var lstDetails;
        var selectTeacher;
        var currentId;
        //Load dữ liệu lên form

        //Lấy danh sách các môn học về.
        var lstSub = GetData(ajaxAddTeacher + "/GetSubject");
        ulClearAll("diaTeacher #chlSubject");
        tableDelAllRow("diaTeacher #tblTeacher");
        if (lstSub.length > 0) {
            for (var i = 0; i < lstSub.length; i++) {
                var el = '<input type="checkbox" name="chkSubject" value="' + lstSub[i].SubjectID + '"/>' + lstSub[i].SubjectName;
                ulAddElement("chlSubject", el);
            }
        }
        else {
            alert("TKB hiện tại không có môn học nào cần phân giáo viên!");
        }
        function ReloadTable() {
            groupCheckUncheckAll("chkSubject");
            selectTeacher = new Array();
            $("#diaTeacher #btnUpdate").attr('disabled', 'disabled');
            $("#diaTeacher #btnDel").attr('disabled', 'disabled');
            $("#diaTeacher #btnAdd").attr('disabled', '');
            $("#diaTeacher #txtTeacherName").val("");
            $("#diaTeacher #txtNumLession").val("");
            $("#diaTeacher #txtComment").val("");
            tableDelAllRow("diaTeacher #tblTeacher");
            //Lấy danh sách giáo viên về.
            var lstTeacher = GetData(ajaxAddTeacher + "/GetTeacher");
            var nameArr = new Array();
            nameArr.push("teacherId");

            for (var i = 0; i < lstTeacher.length; i++) {
                var valArr = new Array();
                valArr.push(lstTeacher[i].TeacherID);
                var dt = GetDataPara(ajaxAddTeacher + "/GetTeacherInfo", nameArr, valArr);
                if (dt != "FAIL") {
                    var rowData = new Array();
                    rowData.push('<input type="radio" name="rdoEdit" value="' + i + '" />');
                    rowData.push('<input type="checkbox" name="chkDelete" value="' + lstTeacher[i].TeacherID + '" />');
                    rowData.push(lstTeacher[i].FullName);
                    var strT = "";
                    for (var j = 0; j < dt.length; j++) {
                        strT += dt[j].SubjectName + ", ";
                    }
                    strT = strT.substring(0, strT.length - 2);
                    rowData.push(strT);
                    rowData.push(lstTeacher[i].MinLession);
                    rowData.push(lstTeacher[i].Comment);
                    tableAddRow("diaTeacher #tblTeacher", rowData);
                }
            }
            $("#diaTeacher input[name=rdoEdit]").click(function() {
                $("#diaTeacher input[name=rdoEdit]").each(function(i, select) {
                    if (select.checked) {
                        currentId = $(select).attr('value');
                        $("#diaTeacher #txtTeacherName").val(lstTeacher[currentId].FullName);
                        $("#diaTeacher #txtNumLession").val(lstTeacher[currentId].MinLession);
                        $("#diaTeacher #txtComment").val(lstTeacher[currentId].Comment);
                        var nameArr = new Array();
                        nameArr.push("teacherId");
                        var valArr = new Array();
                        valArr.push(lstTeacher[i].TeacherID);
                        var dt = GetDataPara(ajaxAddTeacher + "/GetTeacherInfo", nameArr, valArr);
                        //var dts=
                        if (dt != "FAIL") {
                            groupCheckUncheckAll("chkSubject");
                            for (var i = 0; i < dt.length; i++) {
                                groupCheckCheckAtvalue("chkSubject", dt[i].SubjectID);
                            }
                            $("#diaTeacher #btnUpdate").attr('disabled', '');
                            $("#diaTeacher #btnAdd").attr('disabled', 'disabled');


                            $("#diaTeacher #btnUpdate").click(function() {
                                var tname = $("#diaTeacher #txtTeacherName").val();
                                var numLession = $("#diaTeacher #txtNumLession").val();
                                var comment = $("#diaTeacher #txtComment").val();
                                var t = tname.trim();
                                var ok = true;
                                if (t.length == 0 || numLession <= 0) {
                                    alert("Vui lòng nhập lại tên giáo viên hoặc số tiết giảng dạy của giáo viên!");
                                    ok = false;
                                }
                                else {
                                    var teacher = new JTeacher();
                                    teacher.FullName = tname;
                                    teacher.MinLession = numLession;
                                    teacher.Comment = comment;
                                    var tDetails = new Array();
                                    var temp = groupCheckGetCheckValue("chkSubject");
                                    for (var i = 0; i < temp.length; i++) {
                                        var td = new JTeacherDetail();
                                        td.SubjectID = temp[i];
                                        tDetails.push(td);
                                    }
                                    var ok = true;
                                    if (tDetails.length == 0) {
                                        ok = confirm("Giáo viên này không dạy môn nào?");
                                    }
                                    if (ok) {
                                        //var msg = AddTeacher(ajaxAddTeacher + "/AddTeacher", teacher, tDetails);
                                        //Update
                                        var nameArr = new Array();
                                        nameArr.push("teacherId");
                                        nameArr.push("jt");
                                        nameArr.push("jdetails");
                                        var valArr = new Array();
                                        valArr.push(lstTeacher[currentId].TeacherID);
                                        valArr.push(teacher);
                                        valArr.push(tDetails);
                                        var msg = GetDataPara(ajaxAddTeacher + "/UpdateTeacher", nameArr, valArr);
                                        //alert("UpdateTeacher " + msg);
                                        if (msg != "SUCCESS" && msg != null) {
                                            alert("Có lỗi trong quá trình lưu dữ liệu, vui lòng thử lại.");
                                        }
                                        //alert("Reloadtable");
                                        ReloadTable();
                                    }
                                }

                            });
                        }
                    }

                });
            });
            $("#diaTeacher input[name=chkDelete]").click(function() {
                selectTeacher = groupCheckGetCheckValue("chkDelete");
                //alert("chkChanged" + selectTeacher);
                if (selectTeacher.length > 0) {
                    $("#diaTeacher #btnDel").attr('disabled', '');
                    $("#diaTeacher #btnAdd").attr('disabled', 'disabled');
                }
                else {
                    $("#diaTeacher #btnDel").attr('disabled', 'disabled');
                    $("#diaTeacher #btnAdd").attr('disabled', '');
                }
            });


        }
        if (!diaTeacherLoad) {
            $("#diaTeacher #btnDel").click(function() {
                if (selectTeacher.length > 0) {
                    var nameArr = new Array();
                    nameArr.push("lstId");
                    var valArr = new Array();
                    valArr.push(selectTeacher);
                    var msg = GetDataPara(ajaxAddTeacher + "/DeleteTeacher", nameArr, valArr);
                    //alert("DeleteTeacher" + msg);
                    if (msg != "SUCCESS" && msg != null) {
                        alert("Có lỗi trong quá trình lưu dữ liệu, vui lòng thử lại.");
                    }
                    ReloadTable();
                }
            });
            $("#diaTeacher #btnAdd").click(function() {
                var tname = $("#diaTeacher #txtTeacherName").val();
                var numLession = $("#diaTeacher #txtNumLession").val();
                var comment = $("#diaTeacher #txtComment").val();
                var t = tname.trim();
                var ok = true;
                if (t.length == 0 || numLession <= 0) {
                    alert("Vui lòng nhập lại tên giáo viên hoặc số tiết giảng dạy của giáo viên!");
                    ok = false;
                }
                else {
                    var teacher = new JTeacher();
                    teacher.FullName = tname;
                    teacher.MinLession = numLession;
                    teacher.Comment = comment;
                    var tDetails = new Array();
                    var temp = groupCheckGetCheckValue("chkSubject");
                    for (var i = 0; i < temp.length; i++) {
                        var td = new JTeacherDetail();
                        td.SubjectID = temp[i];
                        tDetails.push(td);
                    }
                    var ok = true;
                    if (tDetails.length == 0) {
                        ok = confirm("Giáo viên này không dạy môn nào?");
                    }
                    if (ok) {
                        var msg = AddTeacher(ajaxAddTeacher + "/AddTeacher", teacher, tDetails);
                        //alert("addteacher " + msg);
                        if (msg != "SUCCESS" && msg != null) {
                            alert("Có lỗi trong quá trình lưu dữ liệu, vui lòng thử lại.");
                        }
                        else {
                            //alert("Reloadtable");
                            ReloadTable();
                        }
                    }
                }
            });
            $("#diaTeacher #btnOk").click(function() {
                if (confirm("Sang bước tiếp theo?")) {
                    diaTeacher.dialog('close');
                }
            });
            diaTeacherLoad = true;
        }
    });
    //Đóng form nhập giáo viên thì bật form Fix thời gian giảng dạy của giáo viên.
    diaTeacher.bind('dialogclose', function(event, ui) {
        diaTeacherTime.dialog('open');
        //Load thông tin lên form
        var lstTeacher;
        var lstDay;
        var lstSession;
        var cTeacherId = -1;
        var cDayId = -1;
        var lstFix;
        lstTeacher = GetData(ajaxTeacherTime + "/GetTeacher");
        lstDay = GetData(ajaxTeacherTime + "/GetDay");
        lstSession = GetData(ajaxTeacherTime + "/GetSession");
        selectClear("diaTeacherTime #cobTeacher");
        selectClear("diaTeacherTime #cobDay");
        ulClearAll("diaTeacherTime #chlSession");
        if (lstTeacher.length > 0) {
            cTeacherId = lstTeacher[0].TeacherID;
        }
        if (lstDay.length > 0) {
            cDayId = lstDay[0].DayID;
        }
        //Update data lên form
        for (var i = 0; i < lstTeacher.length; i++) {
            selectAddItem("diaTeacherTime #cobTeacher", lstTeacher[i].FullName, lstTeacher[i].TeacherID);
        }

        for (var i = 0; i < lstDay.length; i++) {
            selectAddItem("diaTeacherTime #cobDay", lstDay[i].DayName, lstDay[i].DayID);
        }
        for (var i = 0; i < lstSession.length; i++) {
            ulAddElement("diaTeacherTime #chlSession", '<input type="checkbox" name="chkSession" value="' + lstSession[i].SessionID + '" />' + lstSession[i].SessionName);
        }
        function ReloadField() {
            var nameArr = new Array();
            nameArr.push("teacherId");
            nameArr.push("dayId");
            var valArr = new Array();
            valArr.push(cTeacherId);
            valArr.push(cDayId);
            lstFix = GetDataPara(ajaxTeacherTime + "/GetFixTeacherTime", nameArr, valArr);
            groupCheckUncheckAll("chkSession");
            for (var i = 0; i < lstFix.length; i++) {
                groupCheckCheckAtvalue("chkSession", lstFix[i].SessionID);
            }

        }
        function ReloadTable() {
            tableDelAllRow("diaTeacherTime #tblFixInfo");
            var lstTeacherFix = GetData(ajaxTeacherTime + "/GetTeacherFix");
            for (var i = 0; i < lstTeacherFix.length; i++) {
                var tName = lstTeacherFix[i].JTeach.FullName;
                var tStr = "";
                for (var j = 0; j < lstTeacherFix[i].LstDay.length; j++) {
                    tStr += lstTeacherFix[i].LstDay[j].DayName + ": ";
                    for (var q = 0; q < lstTeacherFix[i].LstLstSession[j].length; q++) {
                        tStr += lstTeacherFix[i].LstLstSession[j][q].SessionName + "-";
                    }
                    tStr = tStr.substring(0, tStr.length - 1) + ", ";
                }
                tStr = tStr.substring(0, tStr.length - 1);
                //bind len table
                var arr = new Array();
                arr.push(tName);
                arr.push(tStr);
                tableAddRow("diaTeacherTime #tblFixInfo", arr);
            }

        }
        if (!diaTeacherTimeLoad) {
            $("#diaTeacherTime #cobTeacher").change(function() {
                cTeacherId = selectGetSelectedValue("diaTeacherTime #cobTeacher");
                ReloadField();
            });
            $("#diaTeacherTime #cobDay").change(function() {
                cDayId = selectGetSelectedValue("diaTeacherTime #cobDay");
                ReloadField();
            });
            $("#diaTeacherTime #btnSave").click(function() {
                var selectSes = groupCheckGetCheckValue("chkSession");
                //alert(selectSes);
                if (selectSes.length > 0) {
                    var fixArr = new Array();
                    for (var i = 0; i < selectSes.length; i++) {
                        var f = new JFixTeacherSession();
                        f.TeacherID = cTeacherId;
                        f.DayID = cDayId;
                        f.SessionID = selectSes[i];
                        fixArr.push(f);
                    }
                    var nameArr = new Array();
                    nameArr.push("lstJFix");
                    var valArr = new Array();
                    valArr.push(fixArr);
                    var msg = GetDataPara(ajaxTeacherTime + "/AddFixTeacherSession", nameArr, valArr);
                    if (msg == "SUCCESS" || msg == null) {
                        alert("Thành công.");
                    }
                    else {
                        alert("Có lỗi trong quá trình lưu thông tin, xin vui lòng thử lại.");
                    }
                    ReloadTable();
                }

            });
            $("#diaTeacherTime #btnOk").click(function() {
                if (confirm("Sang bước tiếp theo?")) {
                    diaTeacherTime.dialog('close');
                }
            });
            diaTeacherTimeLoad = true;
        }
        //Load all teacher
    });
    //Đóng form FixTeacher thì bật form nhập chương trình đào tạo
    diaTeacherTime.bind('dialogclose', function(event, ui) {
        diaProgram.dialog('open');
        //Bind dữ liệu
        var lstSubject;
        var lstJPF;
        var cProgramId;
        var cProgram;
        var cDetails;
        var dataOk;
        $("#diaProgram #btnEdit").attr("disabled", "disabled");
        $("#diaProgram #btnCancelE").attr("disabled", "disabled");
        lstSubject = GetData(ajaxProgram + "/GetSubject");
        $("#diaProgram #tblProgram tr").remove();
        var colData = new Array();
        for (var i = 0; i < lstSubject.length; i++) {
            colData.push(lstSubject[i].SubjectName);
        }
        //$("#diaProgram #tblSubject tr").remove();
        //tableAddCol("diaProgram #tblSubject", "Môn học", colData);
        tableDelAllRow("diaProgram #tblSubject");
        var firstCol = new Array();
        //firstCol.push("Môn");
        for (var i = 0; i < lstSubject.length; i++) {
            var valArr = new Array();
            valArr.push(lstSubject[i].SubjectName);
            valArr.push('<input type="text" id="txtNum' + lstSubject[i].SubjectID + '" class="txtNumLession" value="1" />');
            valArr.push('<input type="text" id="txtCom' + lstSubject[i].SubjectID + '" class="txtComment" />');
            tableAddRow("diaProgram #tblSubject", valArr);
            firstCol.push(lstSubject[i].SubjectName);
        }
        var numCol = $("#diaProgram #tblProgram tr:eq(0) td").length;
        while (numCol > 1) {
            tableDelCol("diaProgram #tblProgram", numCol - 1);
            numCol = $("#diaProgram #tblProgram tr:eq(0) td").length;
        }
        tableAddCol("diaProgram #tblProgram", "Môn", firstCol);

        function ResetAll() {
            $("#diaProgram #btnEdit").attr("disabled", "disabled");
            $("#diaProgram #btnCancelE").attr("disabled", "disabled");
            $("#diaProgram #btnAdd").attr("disabled", "");
            $("#diaProgram #btnNext").attr("disabled", "");
            $("#diaProgram #txtProgram").val("");
            $("#diaProgram #txtComment").val("");
            $("#diaProgram #txtNumLession").val("");
            $("#diaProgram input[class=txtNumLession]").val("1");
            $("#diaProgram input[class=txtComment]").val("");
            cProgramId = null;
        }
        function LoadToEdit() {
            var i = 0;
            for (i = 0; i < lstJPF.length; i++) {
                if (lstJPF[i].Pro.ProgramID == cProgramId) {
                    break;
                }
            }
            //alert(cProgramId);
            $("#diaProgram #txtProgram").val(lstJPF[i].Pro.ProgramName);
            $("#diaProgram #txtComment").html(lstJPF[i].Pro.Comment);
            $("#diaProgram input[name=txtNumLession]").val("0");
            for (var j = 0; j < lstJPF[i].LstSubject.length; j++) {
                $("#diaProgram #txtNum" + lstJPF[i].LstSubject[j].SubjectID).val(lstJPF[i].LstNumLession[j]);
                $("#diaProgram #txtCom" + lstJPF[i].LstSubject[j].SubjectID).val(lstJPF[i].LstComment[j]);
            }
            $("#diaProgram #btnEdit").attr("disabled", "");
            $("#diaProgram #btnCancelE").attr("disabled", "");
            $("#diaProgram #btnAdd").attr("disabled", "disabled");
            $("#diaProgram #btnNext").attr("disabled", "disabled");
            $("#diaProgram #btnCancelE").click(function() {
                ResetAll();
            });

        }
        function prepareData() {
            //Check data
            var pName = $("#diaProgram #txtProgram").val();
            pName = pName.trim();
            dataOk = true;
            if (pName.length == 0) {
                dataOk = false;
            }
            if (dataOk) {
                cProgram = new JProgram();
                cProgram.ProgramName = pName;
                cProgram.Comment = $("#diaProgram #txtComment").val();
                cDetails = new Array();
                $("#diaProgram #tblSubject .txtNumLession").each(function(i, select) {
                    var v = $(select).val();
                    var c = "";
                    var id = $(select).attr('id');
                    if (isNaN(v)) {
                        alert("Thông tin số tiết của môn học là số.");
                        dataOk = false;
                    }
                    else {
                        v = parseInt(v);
                        if (v > 0) {
                            var sId = id.substring(6, id.length);
                            c = $("#diaProgram #tblSubject #txtCom" + sId).val();
                            var dt = new JProgramDetail();
                            dt.SubjectID = sId;
                            dt.NumLession = v;
                            dt.Comment = c;
                            cDetails.push(dt);
                        }
                    }
                });
            }
        }
        function LoadData() {
            lstJPF = new Array();
            lstJPF = GetData(ajaxProgram + "/GetProgram");
            lstSubject = GetData(ajaxProgram + "/GetSubject");
            //alert(JSON.stringify(lstJPF));
            //Bind lên bảng các Program
            //Xóa dữ liệu cũ
            var numCol = $("#diaProgram #tblProgram tr:eq(0) td").length;
            while (numCol > 1) {
                tableDelCol("diaProgram #tblProgram", numCol - 1);
                numCol = $("#diaProgram #tblProgram tr:eq(0) td").length;
            }
            for (var i = 0; i < lstJPF.length; i++) {
                var header = lstJPF[i].Pro.ProgramName + '(<a href="' + lstJPF[i].Pro.ProgramID + '" title="Edit" class="edit">Sửa </a>--<a href="' + lstJPF[i].Pro.ProgramID + '" title="Del" class="del">Xóa </a>)';
                var colData = new Array();
                for (var j = 0; j < lstSubject.length; j++) {
                    var k = 0;
                    for (k = 0; k < lstJPF[i].LstSubject.length; k++) {
                        if (lstSubject[j].SubjectID == lstJPF[i].LstSubject[k].SubjectID) {

                            colData.push(lstJPF[i].LstNumLession[k]);
                            break;
                        }
                    }
                    //alert("K la`: " + k);
                    if (k >= lstJPF[i].LstSubject.length) {
                        colData.push(0);
                    }
                }
                tableAddCol("diaProgram #tblProgram", header, colData);
            }
            //alert("check a");
            //var numA = $("#diaProgram #tblProgram .edit").length;
            //alert(numA);
            $("#diaProgram #tblProgram .edit").click(function(event) {
                //alert("head of function");
                var t = $(event.currentTarget).attr('href');
                cProgramId = t;
                try {
                    LoadToEdit();
                }
                catch (err) {
                    alert(err);
                }
                //alert(t);
                return false;
            });
            //alert("check d");
            $("#diaProgram #tblProgram .del").click(function(event) {
                try {
                    var t = $(event.currentTarget).attr('href');
                    cProgramId = t;
                    if (confirm("Bạn thực sự muốn xóa chương trình học này?")) {
                        //Del chương trình học này đi
                        var nameArr = new Array();
                        nameArr.push("programId");
                        var valArr = new Array();
                        valArr.push(cProgramId);
                        var msg = GetDataPara(ajaxProgram + "/DelProgram", nameArr, valArr);
                        if (msg == "SUCCESS" || msg == null) {
                            alert("Xóa thành công!");
                        }
                        else {
                            alert("Có lỗi!");
                        }
                        ResetAll();
                        LoadData();
                    }
                }
                catch (err) {
                    alert(err);
                }
                return false;
            });
        }
        if (!diaProgramLoad) {
            $("#diaProgram #btnAdd").click(function() {
                prepareData();
                if (dataOk) {
                    //Them vao CSDL
                    var nameArr = new Array();
                    nameArr.push("jProgram");
                    nameArr.push("jDetails");
                    var valArr = new Array();
                    valArr.push(cProgram);
                    valArr.push(cDetails);
                    var msg = GetDataPara(ajaxProgram + "/AddProgram", nameArr, valArr);
                    if (msg == "SUCCESS" || msg == null) {
                        alert("Thành công!");
                        ResetAll();
                        LoadData();
                    }
                    else {
                        alert(msg);
                        ResetAll();
                        LoadData();
                    }
                    dataOk = false;
                }
                else {
                    alert("Xin vui lòng nhập đủ thông tin!");
                }
            });
            $("#diaProgram #btnEdit").click(function() {
                prepareData();
                if (dataOk) {
                    var nameArr = new Array();
                    nameArr.push("currentProgram");
                    nameArr.push("jProgram");
                    nameArr.push("jDetails");
                    var valArr = new Array();
                    valArr.push(cProgramId);
                    valArr.push(cProgram);
                    valArr.push(cDetails);
                    var msg = GetDataPara(ajaxProgram + "/UpdateProgram", nameArr, valArr);
                    if (msg == "SUCCESS" || msg == null) {
                        alert("Thành công!");
                    }
                    else {
                        alert("Lỗi: " + msg);
                    }
                    LoadData();
                }
                else {
                    alert("Vui lòng nhập đủ thông tin");
                }
            });

            $("#diaProgram #btnNext").click(function() {
                if (confirm("Sang bước tiếp?")) {
                    diaProgram.dialog('close');
                }
            });
            diaProgramLoad = true;
        }
    });
    diaProgram.bind('dialogclose', function(event, ui) {
        diaGroup.dialog('open');
        var lstSession, lstProgram, lstGroup;
        lstSession = GetData(ajaxGroup + "/GetSession");
        lstProgram = GetData(ajaxGroup + "/GetProgram");
        //alert(ajaxGroup + "/GetProgram");
        var cGroupId, cGroup;
        //Bind dữ liệu lên form
        selectClear("diaGroup #cobSession");
        selectClear("diaGroup #cobProgram");
        $("#diaGroup #txtComment").val("");
        tableDelAllRow("diaGroup #tblGroup");
        for (var i = 0; i < lstSession.length; i++) {
            selectAddItem("diaGroup #cobSession", lstSession[i].SessionName, lstSession[i].SessionID);
        }
        for (var i = 0; i < lstProgram.length; i++) {
            selectAddItem("diaGroup #cobProgram", lstProgram[i].ProgramName, lstProgram[i].ProgramID);
        }
        function prepareGroup() {
            cGroup = new JGroup();
            cGroup.ProgramID = selectGetSelectedValue("diaGroup #cobProgram");
            cGroup.SessionID = selectGetSelectedValue("diaGroup #cobSession");
            cGroup.GroupName = $("#diaGroup #txtGroupName").val();
            cGroup.Comment = $("#diaGroup #txtComment").val();
            cGroup.GroupName = cGroup.GroupName.trim();
            if (cGroup.GroupName.length == 0) {
                alert("Tên group chưa đúng!");
                return false;
            }
            else {
                return true;
            }
        }
        function loadToEditGroup() {
            var i;
            for (i = 0; i < lstGroup.length; i++) {
                if (lstGroup[i].GroupID == cGroupId) {
                    break;
                }
            }
            if (i < lstGroup.length) {
                $("#diaGroup #txtGroupName").val(lstGroup[i].GroupName);
                $("#diaGroup #txtComment").val(lstGroup[i].Comment);
                selectSelectAtVal("diaGroup #cobSession", lstGroup[i].SessionID);
                selectSelectAtVal("diaGroup #cobProgram", lstGroup[i].ProgramID);
                //Update state of button
                $("#diaGrouop #btnAdd").attr('disabled', 'disabled');
                $("#diaGrouop #btnSave").attr('disabled', '');
                $("#diaGrouop #btnCancel").attr('disabled', '');
            }
        }
        function syncGroup() {
            lstGroup = GetData(ajaxGroup + "/GetGroup");
            tableDelAllRow("diaGroup #tblGroup");
            for (var i = 0; i < lstGroup.length; i++) {
                var rData = new Array();
                rData.push(lstGroup[i].GroupName + ' (' + lstGroup[i].SessionName + ')--<a href="' + lstGroup[i].GroupID + '" class="edit">Sửa</a>  <a href="' + lstGroup[i].GroupID + '" class="del">Xóa</a>');
                rData.push(lstGroup[i].ProgramName);
                tableAddRow("diaGroup #tblGroup", rData);
            }

        }
        function groupResetAll() {
            $("#diaGroup #btnAdd").attr('disabled', '');
            $("#diaGroup #btnSave").attr('disabled', 'disabled');
            $("#diaGroup #btnCancel").attr('disabled', 'disabled');
            $("#diaGroup #txtGroupName").val("");
            $("#diaGroup #txtComment").val("");
            syncGroup();
            $("#diaGroup #tblGroup .edit").click(function(event) {
                cGroupId = $(event.currentTarget).attr('href');
                loadToEditGroup();
                return false;
            });
            $("#diaGroup #tblGroup .del").click(function(event) {
                cGroupId = $(event.currentTarget).attr('href');
                var nameArr = new Array();
                nameArr.push("id");
                var valArr = new Array();
                valArr.push(cGroupId);
                var msg = GetDataPara(ajaxGroup + "/DeleteGroup", nameArr, valArr);
                if (msg == "SUCCESS" || msg == null) {
                    alert("Thành công!");
                }
                else {
                    alert(msg);
                }
                groupResetAll();
                return false;
            });
        }
        if (!diaGroupLoad) {
            $("#diaGroup #btnSave").click(function() {
                //Update group
                if (prepareGroup()) {
                    var nameArr = new Array();
                    nameArr.push("currentId");
                    nameArr.push("jGroup");
                    var valArr = new Array();
                    valArr.push(cGroupId);
                    valArr.push(cGroup);
                    var msg = GetDataPara(ajaxGroup + "/EditGroup", nameArr, valArr);
                    if (msg == "SUCCESS" || msg == null) {
                        alert("Thành công!");
                    }
                    else {
                        alert(msg);
                    }
                    groupResetAll();
                }
                else {
                    alert("Hãy nhập đủ thông tin.");
                }
            });
            $("#diaGroup #btnCancel").click(function() {
                groupResetAll();
            });
            $("#diaGroup #btnAdd").click(function() {
                if (prepareGroup()) {
                    var nameArr = new Array();
                    nameArr.push("jGroup");
                    var valArr = new Array();
                    valArr.push(cGroup);
                    var msg = GetDataPara(ajaxGroup + "/AddGroup", nameArr, valArr);
                    if (msg == "SUCCESS" || msg == null) {
                        alert("Thành công!");
                    }
                    else {
                        alert(msg);
                    }
                    groupResetAll();
                }
                else {
                    alert("Hãy nhập đủ thông tin.");
                }
                //Insert to database
            });
            $("#diaGroup #btnNext").click(function() {
                if (confirm("Sang bước tiếp theo?")) {
                    diaGroup.dialog('close');
                }
            });
            diaGroupLoad = true;
        }
    });
    diaGroup.bind('dialogclose', function(event, ui) {
        diaFixSubjectLession.dialog('open');
        //Load data
        var lstGroup;
        var lstDay;
        var lstLession;
        lstGroup = GetData(ajaxFixSubjectLession + "/GetGroup");
        lstDay = GetData(ajaxFixSubjectLession + "/GetDay");
        lstLession = GetData(ajaxFixSubjectLession + "/GetLession");
        var cId = 0;
        selectClear("diaFixSubjectLession #cobGroup");
        if (lstGroup.constructor == Array && lstGroup.length > 0) {
            for (var i = 0; i < lstGroup.length; i++) {
                selectAddItem("diaFixSubjectLession #cobGroup", lstGroup[i].GroupName, lstGroup[i].GroupID);
            }
            cId = lstGroup[0].GroupID;
        }
        //var cDay = 0, cLes = 0;
        var lstFreeSubject;
        var lstFSL;
        //Load data len form
        function fslLoad() {
            //Load freesubject cua group hien tai:
            var gId = cId;
            var nameArr = new Array();
            nameArr.push("id");
            var valArr = new Array();
            valArr.push(gId);
            tableDelAllRow("diaFixSubjectLession #tblSelect");
            lstFreeSubject = GetDataPara(ajaxFixSubjectLession + "/GetFreeSubject", nameArr, valArr);
            if (lstFreeSubject.constructor == Array) {
                for (var i = 0; i < lstFreeSubject.length; i++) {
                    var row = new Array();
                    row.push(lstFreeSubject[i].SubjectName);
                    var sDay = "";
                    sDay += '<select id="fslD' + lstFreeSubject[i].SubjectID + '" title="' + lstFreeSubject[i].SubjectID + '" class="fslSDay">';
                    for (var j = 0; j < lstDay.length; j++) {
                        sDay += '<option value="' + lstDay[j].DayID + '" >' + lstDay[j].DayName + '</option>';
                    }
                    sDay += '</select>';
                    row.push(sDay);
                    var sLession = "";
                    sLession += '<select id="fslL' + lstFreeSubject[i].SubjectID + '" title="' + lstFreeSubject[i].SubjectID + '" class="fslLession">';
                    for (var j = 0; j < lstLession.length; j++) {
                        sLession += '<option value="' + lstLession[j].LessionID + '" >' + lstLession[j].Order + '</option>';
                    }
                    sLession += '</select>';
                    row.push(sLession);
                    tableAddRow("diaFixSubjectLession #tblSelect", row);
                }
                var nameArr = new Array();
                nameArr.push("groupId");
                var valArr = new Array();
                valArr.push(cId);
                lstFSL = GetDataPara(ajaxFixSubjectLession + "/GetFSL", nameArr, valArr);
                for (var i = 0; i < lstFSL.length; i++) {
                    selectSelectAtVal("diaFixSubjectLession #fslD" + lstFSL[i].SubjectID, lstFSL[i].DayID);
                    //cDay = lstFSL[i].DayID;
                    selectSelectAtVal("diaFixSubjectLession #fslL" + lstFSL[i].SubjectID, lstFSL[i].LessionID);
                    //cLes = lstFSL[i].LessionID;
                }

                //Bat su kien

            }
        }
        fslLoad();
        if (!diaFixSubjectLessionLoad) {
            $("#diaFixSubjectLession #cobGroup").change(function() {
                cId = selectGetSelectedValue("diaFixSubjectLession #cobGroup");
                fslLoad();
            });
            $("#diaFixSubjectLession #btnSave").click(function() {
                lstFSL = new Array();
                for (var i = 0; i < lstFreeSubject.length; i++) {
                    var sId = lstFreeSubject[i].SubjectID;
                    var dId = selectGetSelectedValue("diaFixSubjectLession #fslD" + sId);
                    var lId = selectGetSelectedValue("diaFixSubjectLession #fslL" + sId);
                    var fsl = new JFixSubjectSessionLession();
                    fsl.GroupID = cId;
                    fsl.SubjectID = lstFreeSubject[i].SubjectID;
                    fsl.DayID = dId;
                    fsl.LessionID = lId;
                    lstFSL.push(fsl);
                }
                //Add vao csdl
                var nameArr = new Array();
                nameArr.push("lstJFSL");
                var valArr = new Array();
                valArr.push(lstFSL);
                var msg = GetDataPara(ajaxFixSubjectLession + "/AddFSL", nameArr, valArr);
                if (msg == "SUCCESS" || msg == null) {
                    alert("Thành công!");
                }
                else {
                    alert(msg);
                }
            });
            $("#diaFixSubjectLession #btnNext").click(function() {
                if (confirm("Sang bước tiếp?")) {
                    diaFixSubjectLession.dialog('close');
                }
            });
            diaFixSubjectLessionLoad = true;
        }
    });
    diaFixSubjectLession.bind('dialogclose', function(event, ui) {
        /////////////////////////////////////////////////////////////////////
        //alert("Bat form Class co ma")
        diaClass.dialog('open');
        var lstGroup, lstAvailTeacher, lstClass, cId;
        var cClass;

        //alert("Da bind Group: " + lstGroup.length);
        function classPrepare() {
            cClass = new JClass();
            cClass.ClassName = $("#diaClass #txtClassName").val();
            cClass.GroupID = selectGetSelectedValue("diaClass #cobGroup");
            cClass.ClassSize = $("#diaClass #txtClassSize").val();
            cClass.TeacherID = selectGetSelectedValue("diaClass #cobTeacher");
            cClass.Comment = $("#diaClass #txtComment").val();
        }
        function classResset() {
            $("#diaClass #txtClassName").val("");
            $("#diaClass #txtClassSize").val("");
            $("#diaClass #txtComment").val("");
            $("#diaClass #btnUpdate").attr("disabled", "disabled");
            $("#diaClass #btnCancel").attr("disabled", "disabled");
            $("#diaClass #btnAdd").attr("disabled", "");
            lstGroup = GetData(ajaxClass + "/GetGroup");
            //alert("Đã getgroup");
            selectClear("diaClass #cobGroup");
            if (lstGroup != null && lstGroup != "FAIL" && lstGroup != "SESSIONCLOSE") {
                for (var i = 0; i < lstGroup.length; i++) {
                    selectAddItem("diaClass #cobGroup", lstGroup[i].GroupName, lstGroup[i].GroupID);
                    //alert("added group");
                }
            }
            selectClear("diaClass #cobTeacher");
            lstAvailTeacher = GetData(ajaxClass + "/GetAvailTeach");
            if (lstAvailTeacher != null && lstAvailTeacher != "FAIL" && lstAvailTeacher != "SESSIONCLOSE") {
                for (var i = 0; i < lstAvailTeacher.length; i++) {
                    selectAddItem("diaClass #cobTeacher", lstAvailTeacher[i].FullName, lstAvailTeacher[i].TeacherID);
                }
            }
            lstClass = GetData(ajaxClass + "/GetAllClass");
            tableDelAllRow("diaClass #tblClassList");
            for (var i = 0; i < lstClass.length; i++) {
                var row = new Array();
                row.push(i + 1);
                row.push(lstClass[i].Cl.ClassName);
                row.push(lstClass[i].G.GroupName + ' (<a href="#" title="' + i + '" class="edit">Sửa</a>--<a href="#" title="' + i + '" class="delete">Xóa</a>)');
                row.push(lstClass[i].T.FullName);
                tableAddRow("diaClass #tblClassList", row);
            }
            function loadEditClass() {
                $("#diaClass #txtClassName").val(lstClass[cId].Cl.ClassName);
                $("#diaClass #txtClassSize").val(lstClass[cId].Cl.ClassSize);
                /*
                var nameArr = new Array();
                nameArr.push("classId");
                var valArr = new Array();
                valArr.push(lstClass[cId].Cl.ClassID);
                lstAvailTeacher = GetDataPara(ajaxClass + "/GetGVCN2Edit", nameArr, valArr);*/
                lstAvailTeacher.push(lstClass[cId].T);
                selectAddItem("diaClass #cobTeacher", lstClass[cId].T.FullName, lstClass[cId].T.TeacherID);
                selectSelectAtVal("diaClass #cobTeacher", lstClass[cId].Cl.TeacherID);
                selectSelectAtVal("diaClass #cobGroup", lstClass[cId].Cl.GroupID);
                $("#diaClass #txtComment").val(lstClass[cId].Cl.Comment);
                $("#diaClass #btnUpdate").attr("disabled", "");
                $("#diaClass #btnCancel").attr("disabled", "");
                $("#diaClass #btnAdd").attr("disabled", "disabled");
            }
            $("#diaClass .edit").click(function(event) {
                cId = $(event.currentTarget).attr('title');
                loadEditClass();
                return false;
            });
            $("#diaClass .delete").click(function(event) {
                var temp = $(event.currentTarget).attr('title');
                var tName;
                if (confirm("Bạn thực sự muốn xóa lớp " + lstClass[temp].Cl.ClassName)) {
                    var nameArr = new Array();
                    nameArr.push("classId");
                    var valArr = new Array();
                    valArr.push(lstClass[temp].Cl.ClassID);
                    var msg = GetDataPara(ajaxClass + "/DeleteClass", nameArr, valArr);
                    if (msg == "SUCCESS" || msg == null) {
                        alert("Đã xóa!");
                    }
                    classResset();
                }
                return false;
            });
        }
        classResset();
        if (!diaClassLoad) {
            $("#diaClass #btnAdd").click(function() {
                //alert("add clicked");
                classPrepare();
                var nameT = cClass.ClassName.trim();
                //alert(JSON.stringify(cClass));
                if (nameT.length > 0 && cClass.ClassSize > 0) {
                    var nameArr = new Array();
                    nameArr.push("jclass");
                    var valArr = new Array();
                    valArr.push(cClass);
                    var msg = GetDataPara(ajaxClass + "/AddClass", nameArr, valArr);
                    if (msg == "SUCCESS" || msg == null) {
                        alert("Thành công!");
                    }
                    else {
                        alert("Có lỗi: " + msg);
                    }
                    classResset();
                }
                else {
                    alert("Tên lớp chưa đúng hoặc sĩ số lớp chưa đúng");
                }
            });
            $("#diaClass #btnUpdate").click(function() {
                classPrepare();
                var nameT = cClass.ClassName.trim();
                if (nameT.length > 0 && cClass.ClassSize > 0) {
                    var nameArr = new Array();
                    nameArr.push("currentId");
                    nameArr.push("jclass");
                    var valArr = new Array();
                    valArr.push(lstClass[cId].Cl.ClassID);
                    valArr.push(cClass);
                    var msg = GetDataPara(ajaxClass + "/EditClass", nameArr, valArr);
                    if (msg == "SUCCESS" || msg == null) {
                        alert("Thành công!");
                    }
                    else {
                        alert("Có lỗi: " + msg);
                    }
                    classResset();
                }
                else {
                    alert("Tên lớp chưa đúng hoặc sĩ số lớp chưa đúng");
                }
            });
            $("#diaClass #btnCancel").click(function() {
                classResset();
            });
            $("#diaClass #btnNext").click(function() {
                if (confirm("Bạn thực sự đã hoàn thành nhập danh sách các lớp?")) {
                    diaClass.dialog('close');
                }
            });
            diaClassLoad = true;
        }
    });
    diaClass.bind('dialogclose', function(event, ui) {
        diaFCST.dialog('open');
        var lstGroup, lstClass, lstGVCNSub, lstSubTeach, gvcn, lstJFix;
        var grIndex = -1, classIndex = -1, gvcnSubId = -1;
        //alert("Load data");
        diaFCST.dialog("option", "title", "Đang tải dữ liệu-xin chờ giây lát!");
        lstGroup = GetData(ajaxFCST + "/GetGroup");
        diaFCST.dialog("option", 'title', 'Đã tải xong');
        alert("Nhập thông tin phân công giáo viên.");
        for (var i = 0; i < lstGroup.length; i++) {
            $("#diaFCST #cobGroup").append('<option value="' + i + '">' + lstGroup[i].GroupName + '</option>');
            //selectAddItem("diaFCST #cobGroup", lstGroup[i].GroupName, i);
        }
        if (lstGroup.length > 0) {
            grIndex = 0;
        }
        else {
            grIndex = -1;
        }
        function fcstLoadTable() {
            var nameArr = new Array();
            nameArr.push("classId");
            nameArr.push("gvcnSubId");
            var valArr = new Array();
            valArr.push(lstClass[classIndex].ClassID);
            valArr.push(gvcnSubId);
            var currentFix;
            diaFCST.dialog("option", 'title', 'Đang tải dữ liệu-xin chờ giây lát!');
            lstSubTeach = GetDataPara(ajaxFCST + "/GetSubjectInfo", nameArr, valArr);
            diaFCST.dialog("option", 'title', 'Đã tải xong');
            tableDelAllRow("diaFCST #tblSubjectTeacher");
            for (var i = 0; i < lstSubTeach.length; i++) {
                var row = new Array();
                row.push(lstSubTeach[i].Sub.SubjectName);
                var cob = '<select id="cobSub' + lstSubTeach[i].Sub.SubjectID + '" >';
                cob += '<option value="0"></option>';
                for (var j = 0; j < lstSubTeach[i].LstTeach.length; j++) {
                    cob += '<option value="' + lstSubTeach[i].LstTeach[j].TeacherID + '">' + lstSubTeach[i].LstTeach[j].FullName + '</option>';
                }
                cob += '</select>';
                row.push(cob);
                tableAddRow("diaFCST #tblSubjectTeacher", row);
                var nameArr = new Array();
                nameArr.push("classId");
                nameArr.push("subId");
                var valArr = new Array();
                valArr.push(lstClass[classIndex].ClassID);
                //alert("class id: "+lstClass[classIndex].ClassID);
                valArr.push(lstSubTeach[i].Sub.SubjectID);
                //alert("sub id: " + lstSubTeach[i].Sub.SubjectID);
                diaFCST.dialog("option", 'title', 'Đang tải dữ liệu-xin chờ giây lát!');
                var fi = GetDataPara(ajaxFCST + "/GetFixedInfo", nameArr, valArr);
                diaFCST.dialog("option", 'title', 'Đã tải xong');
                //alert(fi);
                if (fi > 0) {

                    selectSelectAtVal("diaFCST #cobSub" + lstSubTeach[i].Sub.SubjectID, fi);
                }
            }

        }
        function fcstLoadInfo() {
            if (classIndex >= 0) {
                var nameArr = new Array();
                nameArr.push("classId");
                var valArr = new Array();
                valArr.push(lstClass[classIndex].ClassID);
                diaFCST.dialog("option", 'title', 'Đang tải dữ liệu-xin chờ giây lát!');
                gvcn = GetDataPara(ajaxFCST + "/GetGVCN", nameArr, valArr);
                diaFCST.dialog("option", 'title', 'Đã tải xong');
                $("#diaFCST #txtTeacher").val(gvcn.T.FullName);
                selectAddItem("diaFCST #cobSubject", "", 0);
                for (var i = 0; i < gvcn.LstSub.length; i++) {
                    selectAddItem("diaFCST #cobSubject", gvcn.LstSub[i].SubjectName, gvcn.LstSub[i].SubjectID);
                }
                if (gvcn.LstSub.length > 0) {
                    var nameArr = new Array();
                    nameArr.push("classId");
                    nameArr.push("teacherId");
                    var valArr = new Array();
                    valArr.push(lstClass[classIndex].ClassID);
                    valArr.push(gvcn.T.TeacherID);
                    diaFCST.dialog("option", 'title', 'Đang tải dữ liệu-xin chờ giây lát!');
                    var fi = GetDataPara(ajaxFCST + "/GetTeacherFixInfo", nameArr, valArr);
                    //alert(fi);
                    diaFCST.dialog("option", 'title', 'Đã tải xong');
                    if (fi <= 0) {
                        gvcnSubId = gvcn.LstSub[0].SubjectID;
                    }
                    else {
                        //alert(fi);
                        gvcnSubId = fi;
                        selectSelectAtVal("diaFCST #cobSubject", gvcnSubId);
                    }
                }
                fcstLoadTable();
                $("#diaFCST #cobSubject").change(function() {
                    gvcnSubId = selectGetSelectedValue("diaFCST #cobSubject");
                    fcstLoadTable();
                });

            }
        }
        function fcstLoadClass() {
            if (grIndex >= 0) {
                var nameArr = new Array();
                nameArr.push("groupId");
                var valArr = new Array();
                valArr.push(lstGroup[grIndex].GroupID);
                diaFCST.dialog("option", 'title', 'Đang tải dữ liệu-xin chờ giây lát!');
                lstClass = GetDataPara(ajaxFCST + "/GetClassOfGroup", nameArr, valArr);
                diaFCST.dialog("option", 'title', 'Đã tải xong');
                selectClear("diaFCST #cobClass");
                selectClear("diaFCST #cobSubject");
                tableDelAllRow("diaFCST #tblSubjectTeacher");
                $("#diaFCST #txtTeacher").val("");

                for (var i = 0; i < lstClass.length; i++) {
                    selectAddItem("diaFCST #cobClass", lstClass[i].ClassName, i);
                }
                if (lstClass.length > 0) {
                    classIndex = 0;
                }
                else {
                    classIndex = -1;
                }
                fcstLoadInfo();
                $("#diaFCST #cobClass").change(function() {
                    classIndex = selectGetSelectedValue("diaFCST #cobClass");
                    fcstLoadInfo();
                });

            }
        }
        fcstLoadClass();
        if (!diaFCSTLoad) {
            $("#diaFCST #cobGroup").change(function() {
                grIndex = selectGetSelectedValue("diaFCST #cobGroup");
                fcstLoadClass();
            });
        }
        function fcstPrepare() {
            lstJFix = new Array();
            var sId = selectGetSelectedValue("diaFCST #cobSubject");
            if (sId > 0) {
                var jf = new JFixTeacherClassSubject();
                jf.TeacherID = gvcn.T.TeacherID;
                jf.ClassID = lstClass[classIndex].ClassID;
                jf.SubjectID = sId;
                lstJFix.push(jf);
            }
            for (var i = 0; i < lstSubTeach.length; i++) {
                var tId = selectGetSelectedValue("diaFCST #cobSub" + lstSubTeach[i].Sub.SubjectID);
                if (tId > 0) {
                    var jf = new JFixTeacherClassSubject();
                    jf.TeacherID = tId;
                    jf.ClassID = lstClass[classIndex].ClassID;
                    jf.SubjectID = lstSubTeach[i].Sub.SubjectID;
                    lstJFix.push(jf);
                }
            }

        }
        if (!diaFCSTLoad) {
            $("#diaFCST #btnSave").click(function() {
                ///Save vao CSDL the nao day?
                fcstPrepare();
                var nameArr = new Array();
                nameArr.push("lstJFix");
                var valArr = new Array();
                valArr.push(lstJFix);
                var temp = JSON.stringify(lstJFix);
                //alert(temp);
                diaFCST.dialog("option", 'title', 'Đang tải dữ liệu-xin chờ giây lát!');
                var msg = GetDataPara(ajaxFCST + "/SaveFixInfo", nameArr, valArr);
                diaFCST.dialog("option", 'title', 'Đã tải xong');
                if (msg == "SUCCESS" || msg == null) {
                    alert("Thành công!");
                }
                else {
                    alert("Có lỗi: " + msg);
                }
            });
            $("#diaFCST #btnClose").click(function() {
                if (confirm("Bạn đã hoàn tất việc nhập?")) {
                    diaFCST.dialog('close');
                }
            });
            diaFCSTLoad = true;
        }

    });
    //Khi click nút add new bật dialog add new schedule
    $("#btnAddNew").click(function() {
        diaNewSchedule.dialog('open');
        if (!diaNewScheduleLoad) {
            $("#diaNewSchedule #btnAdd").click(function() {
                var scheduleName = $("#txtScheduleName").val();
                var jls = new JListSchedule();
                jls.ScheduleName = scheduleName;
                var msg = AddSchedule(jls, ajaxNewScheduleUrl);
                if (msg == "SUCCESS") {
                    alert("Thời khóa biểu mới đã được tạo, mời nhập thông tin thời khóa biểu.");
                    diaNewSchedule.dialog('close');
                }
                else {
                    alert("Có lỗi: " + msg + ". Không thể thêm thời khóa biểu. Xin thử lại.");
                    diaNewSchedule.dialog('close');
                }
            });
            diaNewScheduleLoad = true;
        }
    });


    //Load danh sách các thời khóa biểu đã nhập
    reloadScheduleTable(ajaxViewScheduleUrl + "/GetListSchedule");
});
